package com.example.patient.dto.resp;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @Author wxy
 * @Date 2021/1/27 10:06
 * @Version 1.0
 */
@Data
@ApiModel(value = "处方订单详情返回体")
public class RxOrderDetailResp implements Serializable {
    private static final long serialVersionUID = -6353641792178326642L;

    @ApiModelProperty(value = "rxOrderNo")
    @JSONField(name = "RxOrderNO")
    private String rxOrderNo;
    @ApiModelProperty(value = "name")
    @JSONField(name = "Name")
    private String name;
    @ApiModelProperty(value = "sex")
    @JSONField(name = "Sex")
    private String sex;
    @ApiModelProperty(value = "dialectical")
    @JSONField(name = "Dialectical")
    private String dialectical;
    @ApiModelProperty(value = "docName")
    @JSONField(name = "docName")
    private String docName;
    @ApiModelProperty(value = "title")
    @JSONField(name = "Title")
    private String title;
    @ApiModelProperty(value = "head")
    @JSONField(name = "Head")
    private String head;
    @ApiModelProperty(value = "depName")
    @JSONField(name = "depName")
    private String depName;
    @ApiModelProperty(value = "freight")
    @JSONField(name = "Freight")
    private BigDecimal freight;
    @ApiModelProperty(value = "salePrice")
    @JSONField(name = "SalePrice")
    private BigDecimal salePrice;
    @ApiModelProperty(value = "proPrice")
    @JSONField(name = "ProPrice")
    private BigDecimal proPrice;
    @ApiModelProperty(value = "drugList")
    @JSONField(name = "drugList")
    private List<DrugListResp> drugList;
    @ApiModelProperty(value = "payUrl")
    @JSONField(name = "PayUrl")
    private String payUrl;
    @ApiModelProperty(value = "orderLType")
    @JSONField(name = "OrderLType")
    private Integer orderLType;
    @ApiModelProperty(value = "orderLogistics")
    @JSONField(name = "OrderLogistics")
    private OrderLogisticsResp orderLogistics;
    @ApiModelProperty(value = "payTime")
    @JSONField(name = "PayTime")
    private Date payTime;
    @ApiModelProperty(value = "dType")
    @JSONField(name = "DType")
    private Integer dType;
    @ApiModelProperty(value = "arriveTime")
    @JSONField(name = "ArriveTime")
    private Date arriveTime;

    @Data
    public static class DrugListResp implements Serializable {
        private static final long serialVersionUID = -1936471149140613105L;

        @ApiModelProperty(value = "drugName")
        @JSONField(name = "DrugName")
        private String drugName;
        @ApiModelProperty(value = "spec")
        @JSONField(name = "Spec")
        private String spec;
        @ApiModelProperty(value = "num")
        @JSONField(name = "Num")
        private Integer num;
        @ApiModelProperty(value = "img")
        @JSONField(name = "Img")
        private String img;
        @ApiModelProperty(value = "price")
        @JSONField(name = "Price")
        private BigDecimal price;
    }

    @Data
    public static class OrderLogisticsResp implements Serializable {
        private static final long serialVersionUID = 6303372192024756550L;

        @ApiModelProperty(value = "selfAddress")
        @JSONField(name = "SelfAddress")
        private String selfAddress;
        @ApiModelProperty(value = "selfName")
        @JSONField(name = "SelfName")
        private String selfName;
        @ApiModelProperty(value = "ico")
        @JSONField(name = "ICO")
        private String ico;
        @ApiModelProperty(value = "waybill")
        @JSONField(name = "Waybill")
        private String waybill;
        @ApiModelProperty(value = "name")
        @JSONField(name = "Name")
        private String name;
        @ApiModelProperty(value = "tel")
        @JSONField(name = "Tel")
        private String tel;
        @ApiModelProperty(value = "address")
        @JSONField(name = "Address")
        private String address;
        @ApiModelProperty(value = "phone")
        @JSONField(name = "Phone")
        private String phone;
        @ApiModelProperty(value = "shopLt")
        @JSONField(name = "ShopLt")
        private String shopLt;
    }
}